$fontSize_14: 0.8vw;
$fontSize_16: 0.9vw;
$fontSize_18: 1vw;
$fontSize_22: 1.1vw;
$fontSize_24: 1.26vw;
$fontSize_28: 1.3vw;
$fontSize_32: 1.4vw;
$fontSize_36: 1.8vw;
$fontSize_40: 2.1vw;
$fontSize_48: 2.5vw;
$fontSize_50: 2.6vw;
$fontSize_54: 2.7vw;
$fontSize_64: 3.2vw;
$fontSize_70: 3.5vw;
$fontSize_90: 4.5vw;
$fontSize_100: 5vw;
$fontSize_200: 10vw;
$f: 19.2;

.home {
  position: relative;
  width: 100%;
  .banner {
    width: 100%;
    position: relative;
    max-height: 100vh;
    overflow: hidden;

    .bg {
      width: 100%;
      object-fit: cover;

      img,video {
        width: 100%;
        max-height: 100vh;
        object-fit: cover;
      }
    }

    .text {
      position: absolute;
      left: 10vw;
      top: 45%;
      transform: translateY(-50%);

      .p1 {
        color: white;
        font-size: $fontSize_64;
        font-weight: 500;
        line-height: 1.4;
      }

      .p2 {
        color: #FFF;
        font-size: $fontSize_22;
        margin-top: 1.5vw;
      }
    }

    .customer {
      position: absolute;
      left: 0;
      bottom: 0;
      z-index: 10;
      width: 100%;
      background: rgba(0, 0, 0, 0.20);
      backdrop-filter: blur(5px);
      padding: 2vw 0;
      display: flex;
      justify-content: space-between;
      .scroll-container {
        width: 80vw;
        overflow: hidden;
        margin: 0 auto;

        .animate_box {
          display: flex;
          width: max-content;
          animation: ani-loop 20s linear infinite;

          .flex-xb {
            display: flex;
            flex-wrap: wrap;

            .icon {
              width: 120/19.2+vw;
              border-radius: 12px;
              border: 1px solid rgba(255, 255, 255, 0.50);
              background: rgba(255, 255, 255, 0.30);
              box-shadow: 0 0 10px rgba(4, 38, 128, 0.04);
              height: 60/19.2+vw;
              display: flex;
              align-items: center;
              justify-content: center;
              margin-left: 1.5vw;

              img {
                max-height: 30px;
                max-width: 80%;
                display: block;
                object-fit: contain;
              }
            }
          }

          @keyframes ani-loop {
            0% {
              transform: translateX(0);
            }

            100% {
              transform: translateX(-50%);
            }
          }
        }
      }
    }
  }

  .section1 {
    width: 80vw;
    margin: 8vw auto;
    position: relative;

    .circle {
      position: absolute;
      right: 10%;
      top: 10%;
    }

    .t {
      font-size: $fontSize_64;
      font-weight: 500;
      line-height: 1.4;
    }

    .intro {
      display: flex;
      margin: 2vw 0;

      .des {
        width: 40%;
        color: #666;
        font-size: $fontSize_16;
        font-weight: 300;
        line-height: 1.5;
        margin-right: 3vw;
        text-align: justify;
      }
    }

    .btn {
      border-radius: 32.5px;
      background: #02C4D0;
      padding: 1vw 1.4vw 1.1vw 1.4vw;
      display: flex;
      width: fit-content;
      align-items: center;

      p {
        margin-left: .8vw;
        color: #FFF;
        font-size: $fontSize_16;
      }
    }
  }

  .section2 {
    background: #1A2031;
    padding: 8vw 10vw;
    display: flex;
    justify-content: space-between;
    position: relative;
    .notice{
      position: absolute;
      top: -3.9vw;
      left: 0;
      width: 100%;
      text-align: right;
      p{
        display: inline-block;
        color: #60E1FF;
        font-size: 128/$f+vw;
        font-weight: 700;
        position: relative;
        &::after{
          content: attr(data-text);
          position: absolute;
          top: 0;
          left: 0;
          color: #000;
          clip-path: inset(0 0 50% 0);
        }
      }
      .stroke{
        color: #60E1FF;
        -webkit-text-stroke: unset;
      }
    }
    .circle {
      position: absolute;
      left: 20%;
      bottom: 10%;
    }

    .l {
      .t {
        color: #60E1FF;
        font-size: $fontSize_64;
        font-weight: 500;
        line-height: 1.4;
      }

      .btn {
        border-radius: 32.5px;
        border: 1px solid white;
        padding: 1vw 1.4vw 1.1vw 1.4vw;
        display: flex;
        width: fit-content;
        align-items: center;
        margin-top: 3vw;

        p {
          margin-left: .8vw;
          color: #FFF;
          font-size: $fontSize_16;
        }
      }
    }

    .r {
      width: 60%;

      .intro {
        display: flex;
        justify-content: space-between;
        margin: 4vw 0;

        .des {
          width: 46%;
          color: white;
          text-align: justify;
          line-height: 1.6;
        }
      }

      .list {
        display: flex;

        .item {
          margin-right: 4vw;

          p {
            display: flex;
            align-items: center;
            color: white;
            font-size: $fontSize_18;
            margin-bottom: 10px;

            &::before {
              content: '';
              display: block;
              width: 8px;
              height: 8px;
              border-radius: 50%;
              background-color: white;
              margin-right: 0.8vw;
            }
          }
        }

        .item:last-child {
          p {
            opacity: .6;
          }
        }
      }
    }
  }

  .section3 {
    width: 80vw;
    margin: 5vw auto ;

    .dt {
      display: flex;
      justify-content: space-between;

      .t {
        font-size: $fontSize_64;
        font-weight: 500;
        line-height: 1.4;
      }

      .des {
        color: #999;
        font-size: $fontSize_22;
        margin-top: 6vw;
        line-height: 1.6;
      }
    }

    .list {
      margin: 3vw 0;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      background: url(/static/images/work.png) no-repeat;
      background-size: contain;
      background-position: top center;

      .item {
        width: 49%;

        .pic {
          position: relative;
          overflow: hidden;
          border-radius: 24px;
          height: 27.97vw;
          img {
            width: 100%;
            display: block;
            border-radius: 20px;
            height: 41.67vw;
            position: relative;
            top: -82%;
            object-fit:cover;
          }

          .hover {
            position: absolute;
            right: 0;
            top: 0;
            background-color: white;
            padding: 0.8vw 0.8vw;
            border-bottom-left-radius: 1.5vw;
            transform: translateY(-100%);
            transition-property: transform;
            transition-timing-function: cubic-bezier(.135,.9,.15,1);
            transition-duration: .9s;
            svg {
              width: 3vw;
              position: absolute;
              path {
                fill: #fff;
              }
            }
            .svg1{
              top:0;
              left: -2.9vw;
            }
            

            .tags {
              display: flex;

              p {
                border-radius: 30px;
                background: #F5F5F5;
                font-size: $fontSize_14;
                color:#000;
                padding: 0.5vw 1.3vw 0.4vw 1.3vw;
                margin-right: 0.5vw;
              }
            }
          }
          &:hover{
            .hover{
              transform: translate(0,0);
            }
          }
        }

        .tag {
          display: flex;
          align-items: center;
          margin: 1vw 0 0.5vw 0;

          .time {
            color: #666;
            font-size: $fontSize_16;
          }

          .dot {
            width: 6px;
            height: 6px;
            background-color: #02C4D0;
            border-radius: 50%;
            margin: 0 10px;
          }

          .name {
            font-size: $fontSize_16;
            color: #666;
          }
        }

        .title {
          color: #000;
          font-size: 26/19.2+vw;
          font-weight: bold;
        }
      }

      .item:nth-child(2n) {
        margin-top: 6vw;
      }
    }

    .btn {
      position: relative;
      width: fit-content;
      display: block;
      margin-top: -6vw;
      p {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        text-align: center;
        color: #000;
        font-size: $fontSize_18;
      }
    }
  }

  .section4 {
    width: 80vw;
    margin: 4vw auto;

    .tag {
      display: flex;
      align-items: center;
      color: #999;
      font-size: $fontSize_16;

      &::before {
        content: '';
        display: block;
        height: 6px;
        width: 6px;
        border-radius: 50%;
        background-color: #999;
        margin-right: 10px;
      }
    }

    .dt {
      display: flex;
      justify-content: space-between;
      align-items: center;

      .lt {
        display: flex;
        align-items: center;

        p {
          font-size: 42/19.2+vw;
        }

        span {
          width: 1px;
          height: 38/19.2+vw;
          background: #02C4D0;
          margin: 0 1vw;
        }

        .blue {
          color: #02C4D0;
          font-weight: 500;
        }
      }

      .r {
        .btn {
          border-radius: 32.5px;
          background: #02C4D0;
          padding: 1vw 1.4vw 1.1vw 1.4vw;
          display: flex;
          width: fit-content;
          align-items: center;

          p {
            margin-left: .8vw;
            color: #FFF;
            font-size: $fontSize_16;
          }
        }
      }
    }

    .news {
      margin-top: 3vw;
      width: 100%;

      .swiper-container {
        width: 100%;

        a {
          display: block;

          .pic {
            width: 100%;
            overflow: hidden;

            img {
              width: 100%;
              transition: all 600ms;
            }
          }

          .text {
            padding: 1vw 1.5vw;
            border: 1px solid #E8E8E8;

            .title {
              color: #000;
              font-size: $fontSize_24;
              line-height: 1.5;
              word-break: break-all;
              text-overflow: ellipsis;
              display: -webkit-box;
              -webkit-box-orient: vertical;
              -webkit-line-clamp: 1;
              overflow: hidden;
              // height: 4vw;
              transition: all 600ms;
            }

            .des {
              color: #63676C;
              font-size: $fontSize_16;
              line-height: 1.6;
              word-break: break-all;
              text-overflow: ellipsis;
              display: -webkit-box;
              -webkit-box-orient: vertical;
              -webkit-line-clamp: 3;
              overflow: hidden;
              margin-top: 10px;
            }

            .time {
              color: #999;
              font-size: $fontSize_16;
              margin-top: 2vw;
            }
          }

          &:hover {
            .pic {
              img {
                transform: scale(1.05);
              }
            }

            .text {
              .title {
                color: #02C4D0;
              }
            }
          }
        }
      }
    }
  }

  .section5 {
    width: 100%;
    position: relative;

    .bg {
      img {
        width: 100%;
      }
    }

    .text {
      position: absolute;
      bottom: 35%;
      left: 0;
      width: 100%;
      text-align: center;
      color: #000;
      font-size: $fontSize_40;
    }

    .btn {
      position: absolute;
      left: 50%;
      bottom: -.8vw;
      transform: translateX(-50%);

      .ball {
        width: 133/19.2+vw;
        height: 133/19.2+vw;
      }

      .en {
        img {
          width: 121/19.2+vw;
          height: 121/19.2+vw;
          animation: spin 14s linear infinite;
        }
      }

      @keyframes spin {
        100% {
          transform: rotate(1turn);
        }
      }

      .en,
      p {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
      }

      p {
        color: white;
        font-size: $fontSize_18;
      }

      .icon {
        position: absolute;
        right: 30/19.2+vw;
        top: 30/19.2+vw;
        width: 24/19.2+vw;
        height: 24/19.2+vw;
      }
    }
  }



  @media screen and (max-width: 1024px) {
    .banner{
      padding-top: 59px;
      img{
        height: 60vh;
      }
      .text{
        left: 5%;
        top:50%;
        width: 70%;
        .p1{
          font-size: 20px;
        }
        .p2{
          font-size: 14px;
          line-height: 1.6;
        }
      }
      .customer{
        .scroll-container{
          width: 90%;
          .animate_box{
            .flex-xb{
              .icon{
                width: 80px;
                height: 40px;
                border-radius: 5px;
              }
            }
          }
        }
      }
    }
    .section1{
      width: 90%;
      margin: 60px auto;
      .t{
        font-size: 20px;
      }
      .intro{
        margin: 15px 0;
        flex-direction: column;
        .des{
          font-size: 14px;
          width: 100%;
          margin-bottom: 20px;
          line-height: 1.8;
        }
      }
      .btn{
        padding: 10px 20px;
      }
      .circle{
        top:0;
        right:5%;
        img{
          width: 100px;
        }
      }
    }
    .section2{
      flex-direction: column;
      padding: 60px 5%;
      .notice{
        left: 70%;
        p{
          font-size: 36px;
        }
      }
      .l{
        width: 100%;
        .t{
          font-size: 24px;
        }
        .btn{
          padding: 10px 25px;
        }
      }
      .r{
        width: 100%;
        .intro{
          flex-direction: column;
          .des{
            width: 100%;
            margin-bottom: 20px;
          }
        }
        .list{
          justify-content: space-between;
          .item{
            margin-right: 0;
            p{
              font-size: 16px;
            }
          }
        }
      }
      .circle{
        right:8%;
        left: auto;
        bottom:5%;
        img{
          width: 100px;
        }
      }
    }
    .section3{
      width: 90%;
      margin: 30px auto;
      .dt{
        flex-direction: column;
        .t{
          font-size: 24px;
        }
        .des{
          font-size: 14px;
          margin-top: 10px;
        }
      }
      .list{
        .item{
          width: 100%;
          margin-top: 30px;
          .pic{
            height: 200px;
            border-radius: 10px;
            img{
              height: 300px;
              border-radius: 10px;
            }
          }
          .tag{
            margin: 15px 0 5px 0;
            .time{
              font-size: 14px;
            }
            .name{
              font-size: 16px;
            }
          }
          .title{
            font-size: 16px;
            line-height: 1.6;
          }
        }
        .item:nth-child(2n){
          margin-top: 30px;
        }
      }
      .btn{
        margin: 0 auto;
        img{
          width: 160px;
        }
        p{
          font-size: 14px;
        }
      }
    }
    .section4{
      width: 90%;
      margin: 30px auto;
      .tag{
        font-size: 16px;
      }
      .dt{
        flex-direction: column;
        align-items: flex-start;
        margin: 10px 0;
        .lt{
          p{
            font-size: 20px;
          }
          span{
            margin: 0 10px;height: 10px;
          }
        }
        .r{
          margin-top: 10px;
          .btn{
            padding: 10px 15px;
          }
        }
      }
      .news{
        margin-top: 30px;
        .swiper-container{
          a{
            .text{
              padding: 10px 15px;
              .title{
                font-size: 16px;
                height: auto;
              }
              .des{
                font-size: 14px;
                margin: 20px 0;
              }
              .time{
                font-size: 14px;
              }
            }
          }
        }
      }
    }
    .section5{
      margin-bottom: 30px;
      .text{
        font-size: 16px;
        bottom:40%;
      }
      .btn{
        bottom:-30px;
        .ball{
          width: 60px;
          height: 60px;
        }
        .en{
          img{
            width: 55px;
            height: 55px;
          }
        }
        .icon{
          width: 15px;
          height: 15px;
          right:10px;
          top:10px; 
          display: none;
        }
        p{
          font-size: 12px;
        }
      }
    }
  }
}

